package battleline;

import java.util.ArrayList;
import java.util.List;



public class Jugador {

	private int numJugador;
	private List<Carta> cartasJugador;
	private List<Integer> estandartes;
	private Partida[] partidas;
	private Carta carta;
	private Estandarte estandarte;
	

	public Jugador() {
		cartasJugador = new ArrayList<Carta>();
	}
	public Jugador(int i){
		numJugador=i;
	}

	public void robarCarta( List<CartaTropa> mtr,
			List<CartaTactica> mta) {

	

		Carta c = null;
		
			Pregunta p = new Pregunta();

			
		

			int mazo = p.preguntar();
			if (mazo == 1)
				c = mtr.get(0);
			else if (mazo == 2)
				c = mta.get(0);
			else
				System.out.println("Escoja entre 1 y 2");
			List <Carta> lcj = getCartasJugador();
			lcj.add(c);
	
	}
	 
	 	
	


	public int getNumJugador() {
		return numJugador;
	}

	public List<Carta> getCartasJugador() {
		return cartasJugador;

	}

	

	public boolean compruebaSeguidosYNoSeguidos() {
		boolean res = false;
		int i = 0;
		int n = 0;
		int p = 0;
		while ((n <= 8) && (!res)) {
			int m = getEstandartes().get(n);
			p = p + m;
			if (p == 5)
				res = true;
			n++;
		}
		while ((i <= 6) && (!res)) {
			if ((getEstandartes().get(i) + getEstandartes().get(i + 1) + 
					getEstandartes().get(i + 2)) == 3) {
				res = true;
			}

			i++;
		}
		return res;
	}

	public Partida[] getPartida() {
		return partidas;
	}

	public void setPartida(Partida[] partida) {
		partidas = partida;
	}

	public Carta getCarta() {
		return carta;
	}

	public void setCarta(Carta carta) {
		this.carta = carta;
	}

	public Estandarte getEstandarte() {
		return estandarte;
	}

	public void setEstandarte(Estandarte estandarte) {
		this.estandarte = estandarte;
	}

	public List<Integer> getEstandartes() {
		return estandartes;
	}

	public void setEstandarte(List<Integer> l) {
		estandartes = l;

	}

	public void anotaEstandartes(Estandarte t, Jugador j) {
	
		t.getEstandartesGanados().add(t.getIdEstandarte(), j.getNumJugador());

	}

	/**
	 * @uml.property  name="partida1"
	 * @uml.associationEnd  inverse="jugador:battleline.Partida"
	 */
	private Partida partida1;


	/**
	 * Getter of the property <tt>partida1</tt>
	 * @return  Returns the partida1.
	 * @uml.property  name="partida1"
	 */
	public Partida getPartida1() {
		return partida1;
	}
	/**
	 * Setter of the property <tt>partida1</tt>
	 * @param partida1  The partida1 to set.
	 * @uml.property  name="partida1"
	 */
	public void setPartida1(Partida partida1) {
		this.partida1 = partida1;
	}
}